Например, Бобцов

Оценка применимости методов асинхронного программирования при решении проблемы согласованности данных в микросервисной среде

Аннотация:

Предмет исследования. Рассмотрена проблема организации эффективного взаимодействия микросервисов в отказоустойчивых системах с высокой нагрузкой для обеспечения согласованности данных. В качестве способа организации управления микросервисами выбран шаблон управления Сага (Saga) в оркестрационной форме. Проанализирована целесообразность использования принципов асинхронного программирования при проектировании координатора Саг. Метод. Выполнена симуляция процессов работы координатора Саг, которая учитывает специфику синхронных и асинхронных конфигураций управления распределенными транзакциями (Сагами). Представленные синхронные конфигурации включают в себя координатор, управляющий фиксированным набором потоков и координатор, формирующий новый поток для каждой Саги. В группу асинхронных конфигураций входят координатор, управляющий корутинами и координатор, использующий планировщик ядра Linux. Основные результаты. Рассмотрены симуляции при различных значениях количества обрабатываемых Саг и доступных координатору процессоров. Показано, что при использовании асинхронных подходов имеет место значительное увеличение скорости выполнения набора Саг (до 9,74 раз) и скорости утилизации процессорного времени (до 88 %). Это подтверждает целесообразность их использования при проектировании координатора Саг. Показано, что различие в эффективности рассмотренных асинхронных подходов незначительно. Практическая значимость. Построение оркестратора Саг с применением асинхронных подходов позволит обрабатывать большую нагрузку и эффективнее распределять доступное процессорное время. Результаты исследования могут быть применены при проектировании высоконагруженных распределенных отказоустойчивых вычислительных систем. Оценка, выполненная в работе, будет полезна IT-специалистам и исследователям для решения проблем распределенных вычислений.

Ключевые слова:

Статьи в номере